/**
 */
package diagramaer;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see diagramaer.DiagramaerFactory
 * @model kind="package"
 *        annotation="gmf foo='bar'"
 * @generated
 */
public interface DiagramaerPackage extends EPackage
{
  /**
   * The package name.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  String eNAME = "diagramaer";

  /**
   * The package namespace URI.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  String eNS_URI = "diagramaer";

  /**
   * The package namespace name.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  String eNS_PREFIX = "diagramaer";

  /**
   * The singleton instance of the package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  DiagramaerPackage eINSTANCE = diagramaer.impl.DiagramaerPackageImpl.init();

  /**
   * The meta object id for the '{@link diagramaer.impl.DiagramaERImpl <em>Diagrama ER</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see diagramaer.impl.DiagramaERImpl
   * @see diagramaer.impl.DiagramaerPackageImpl#getDiagramaER()
   * @generated
   */
  int DIAGRAMA_ER = 0;

  /**
   * The feature id for the '<em><b>Tablas</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int DIAGRAMA_ER__TABLAS = 0;

  /**
   * The number of structural features of the '<em>Diagrama ER</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int DIAGRAMA_ER_FEATURE_COUNT = 1;

  /**
   * The meta object id for the '{@link diagramaer.impl.TablaImpl <em>Tabla</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see diagramaer.impl.TablaImpl
   * @see diagramaer.impl.DiagramaerPackageImpl#getTabla()
   * @generated
   */
  int TABLA = 1;

  /**
   * The feature id for the '<em><b>Columnas</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int TABLA__COLUMNAS = 0;

  /**
   * The feature id for the '<em><b>Claves Ajenas</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int TABLA__CLAVES_AJENAS = 1;

  /**
   * The feature id for the '<em><b>Clave Primaria</b></em>' reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int TABLA__CLAVE_PRIMARIA = 2;

  /**
   * The feature id for the '<em><b>Nombre Tabla</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int TABLA__NOMBRE_TABLA = 3;

  /**
   * The number of structural features of the '<em>Tabla</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int TABLA_FEATURE_COUNT = 4;

  /**
   * The meta object id for the '{@link diagramaer.impl.ColumnaImpl <em>Columna</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see diagramaer.impl.ColumnaImpl
   * @see diagramaer.impl.DiagramaerPackageImpl#getColumna()
   * @generated
   */
  int COLUMNA = 2;

  /**
   * The feature id for the '<em><b>Nombre Columna</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COLUMNA__NOMBRE_COLUMNA = 0;

  /**
   * The feature id for the '<em><b>Tipo</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COLUMNA__TIPO = 1;

  /**
   * The number of structural features of the '<em>Columna</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COLUMNA_FEATURE_COUNT = 2;

  /**
   * The meta object id for the '{@link diagramaer.impl.ClaveAjenaImpl <em>Clave Ajena</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see diagramaer.impl.ClaveAjenaImpl
   * @see diagramaer.impl.DiagramaerPackageImpl#getClaveAjena()
   * @generated
   */
  int CLAVE_AJENA = 3;

  /**
   * The feature id for the '<em><b>Columna</b></em>' reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CLAVE_AJENA__COLUMNA = 0;

  /**
   * The feature id for the '<em><b>Referencia</b></em>' reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CLAVE_AJENA__REFERENCIA = 1;

  /**
   * The number of structural features of the '<em>Clave Ajena</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CLAVE_AJENA_FEATURE_COUNT = 2;

  /**
   * The meta object id for the '{@link diagramaer.TipoPrimitivo <em>Tipo Primitivo</em>}' enum.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see diagramaer.TipoPrimitivo
   * @see diagramaer.impl.DiagramaerPackageImpl#getTipoPrimitivo()
   * @generated
   */
  int TIPO_PRIMITIVO = 4;


  /**
   * Returns the meta object for class '{@link diagramaer.DiagramaER <em>Diagrama ER</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Diagrama ER</em>'.
   * @see diagramaer.DiagramaER
   * @generated
   */
  EClass getDiagramaER();

  /**
   * Returns the meta object for the containment reference list '{@link diagramaer.DiagramaER#getTablas <em>Tablas</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Tablas</em>'.
   * @see diagramaer.DiagramaER#getTablas()
   * @see #getDiagramaER()
   * @generated
   */
  EReference getDiagramaER_Tablas();

  /**
   * Returns the meta object for class '{@link diagramaer.Tabla <em>Tabla</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Tabla</em>'.
   * @see diagramaer.Tabla
   * @generated
   */
  EClass getTabla();

  /**
   * Returns the meta object for the containment reference list '{@link diagramaer.Tabla#getColumnas <em>Columnas</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Columnas</em>'.
   * @see diagramaer.Tabla#getColumnas()
   * @see #getTabla()
   * @generated
   */
  EReference getTabla_Columnas();

  /**
   * Returns the meta object for the containment reference list '{@link diagramaer.Tabla#getClavesAjenas <em>Claves Ajenas</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Claves Ajenas</em>'.
   * @see diagramaer.Tabla#getClavesAjenas()
   * @see #getTabla()
   * @generated
   */
  EReference getTabla_ClavesAjenas();

  /**
   * Returns the meta object for the reference list '{@link diagramaer.Tabla#getClavePrimaria <em>Clave Primaria</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference list '<em>Clave Primaria</em>'.
   * @see diagramaer.Tabla#getClavePrimaria()
   * @see #getTabla()
   * @generated
   */
  EReference getTabla_ClavePrimaria();

  /**
   * Returns the meta object for the attribute '{@link diagramaer.Tabla#getNombreTabla <em>Nombre Tabla</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Nombre Tabla</em>'.
   * @see diagramaer.Tabla#getNombreTabla()
   * @see #getTabla()
   * @generated
   */
  EAttribute getTabla_NombreTabla();

  /**
   * Returns the meta object for class '{@link diagramaer.Columna <em>Columna</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Columna</em>'.
   * @see diagramaer.Columna
   * @generated
   */
  EClass getColumna();

  /**
   * Returns the meta object for the attribute '{@link diagramaer.Columna#getNombreColumna <em>Nombre Columna</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Nombre Columna</em>'.
   * @see diagramaer.Columna#getNombreColumna()
   * @see #getColumna()
   * @generated
   */
  EAttribute getColumna_NombreColumna();

  /**
   * Returns the meta object for the attribute '{@link diagramaer.Columna#getTipo <em>Tipo</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Tipo</em>'.
   * @see diagramaer.Columna#getTipo()
   * @see #getColumna()
   * @generated
   */
  EAttribute getColumna_Tipo();

  /**
   * Returns the meta object for class '{@link diagramaer.ClaveAjena <em>Clave Ajena</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Clave Ajena</em>'.
   * @see diagramaer.ClaveAjena
   * @generated
   */
  EClass getClaveAjena();

  /**
   * Returns the meta object for the reference '{@link diagramaer.ClaveAjena#getColumna <em>Columna</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Columna</em>'.
   * @see diagramaer.ClaveAjena#getColumna()
   * @see #getClaveAjena()
   * @generated
   */
  EReference getClaveAjena_Columna();

  /**
   * Returns the meta object for the reference '{@link diagramaer.ClaveAjena#getReferencia <em>Referencia</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Referencia</em>'.
   * @see diagramaer.ClaveAjena#getReferencia()
   * @see #getClaveAjena()
   * @generated
   */
  EReference getClaveAjena_Referencia();

  /**
   * Returns the meta object for enum '{@link diagramaer.TipoPrimitivo <em>Tipo Primitivo</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Tipo Primitivo</em>'.
   * @see diagramaer.TipoPrimitivo
   * @generated
   */
  EEnum getTipoPrimitivo();

  /**
   * Returns the factory that creates the instances of the model.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the factory that creates the instances of the model.
   * @generated
   */
  DiagramaerFactory getDiagramaerFactory();

  /**
   * <!-- begin-user-doc -->
   * Defines literals for the meta objects that represent
   * <ul>
   *   <li>each class,</li>
   *   <li>each feature of each class,</li>
   *   <li>each enum,</li>
   *   <li>and each data type</li>
   * </ul>
   * <!-- end-user-doc -->
   * @generated
   */
  interface Literals
  {
    /**
     * The meta object literal for the '{@link diagramaer.impl.DiagramaERImpl <em>Diagrama ER</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see diagramaer.impl.DiagramaERImpl
     * @see diagramaer.impl.DiagramaerPackageImpl#getDiagramaER()
     * @generated
     */
    EClass DIAGRAMA_ER = eINSTANCE.getDiagramaER();

    /**
     * The meta object literal for the '<em><b>Tablas</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference DIAGRAMA_ER__TABLAS = eINSTANCE.getDiagramaER_Tablas();

    /**
     * The meta object literal for the '{@link diagramaer.impl.TablaImpl <em>Tabla</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see diagramaer.impl.TablaImpl
     * @see diagramaer.impl.DiagramaerPackageImpl#getTabla()
     * @generated
     */
    EClass TABLA = eINSTANCE.getTabla();

    /**
     * The meta object literal for the '<em><b>Columnas</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference TABLA__COLUMNAS = eINSTANCE.getTabla_Columnas();

    /**
     * The meta object literal for the '<em><b>Claves Ajenas</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference TABLA__CLAVES_AJENAS = eINSTANCE.getTabla_ClavesAjenas();

    /**
     * The meta object literal for the '<em><b>Clave Primaria</b></em>' reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference TABLA__CLAVE_PRIMARIA = eINSTANCE.getTabla_ClavePrimaria();

    /**
     * The meta object literal for the '<em><b>Nombre Tabla</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute TABLA__NOMBRE_TABLA = eINSTANCE.getTabla_NombreTabla();

    /**
     * The meta object literal for the '{@link diagramaer.impl.ColumnaImpl <em>Columna</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see diagramaer.impl.ColumnaImpl
     * @see diagramaer.impl.DiagramaerPackageImpl#getColumna()
     * @generated
     */
    EClass COLUMNA = eINSTANCE.getColumna();

    /**
     * The meta object literal for the '<em><b>Nombre Columna</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COLUMNA__NOMBRE_COLUMNA = eINSTANCE.getColumna_NombreColumna();

    /**
     * The meta object literal for the '<em><b>Tipo</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COLUMNA__TIPO = eINSTANCE.getColumna_Tipo();

    /**
     * The meta object literal for the '{@link diagramaer.impl.ClaveAjenaImpl <em>Clave Ajena</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see diagramaer.impl.ClaveAjenaImpl
     * @see diagramaer.impl.DiagramaerPackageImpl#getClaveAjena()
     * @generated
     */
    EClass CLAVE_AJENA = eINSTANCE.getClaveAjena();

    /**
     * The meta object literal for the '<em><b>Columna</b></em>' reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference CLAVE_AJENA__COLUMNA = eINSTANCE.getClaveAjena_Columna();

    /**
     * The meta object literal for the '<em><b>Referencia</b></em>' reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference CLAVE_AJENA__REFERENCIA = eINSTANCE.getClaveAjena_Referencia();

    /**
     * The meta object literal for the '{@link diagramaer.TipoPrimitivo <em>Tipo Primitivo</em>}' enum.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see diagramaer.TipoPrimitivo
     * @see diagramaer.impl.DiagramaerPackageImpl#getTipoPrimitivo()
     * @generated
     */
    EEnum TIPO_PRIMITIVO = eINSTANCE.getTipoPrimitivo();

  }

} //DiagramaerPackage
